﻿using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using WebContratos.Bean;
using WAContratos.Manager;

namespace WebContratos
{
    public partial class ingresoDeleTec : System.Web.UI.Page
    {
        private static UsuarioBean UserBean = new UsuarioBean();
        private static String TextoAdmini = "";
        private static String TextoAdmini1 = "";

        protected void Page_Load(object sender, EventArgs e)
        {
            this.txtCodContrato.Value = Convert.ToString(Request.QueryString["codContrato"]);
            this.txtCodProceso.Value = Convert.ToString(Request.QueryString["codProceso"]);
            this.txtObjetoContrato.Value = Convert.ToString(Session["objetoContr"]);

            UserBean = (UsuarioBean)Session["UserBean"];

            string carga = "consuAdministrador('consuXMLDeleTec.aspx?codigoContrato=" + this.txtCodContrato.Value + "');";
            string jScriptProrroga = "<script>" + carga + "</script>";
            Page.RegisterStartupScript("keyClientBlockProrroga", jScriptProrroga);

            if ((!IsPostBack))
            {
                TextoAdmini = "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\"><html xmlns=\"http://www.w3.org/1999/xhtml\" ><head runat=\"server\"><title>Modulo de Contratos</title></head><body>    <form id=\"form1\" runat=\"server\">";
                TextoAdmini = TextoAdmini + "<DIV style=\"PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; PADDING-TOP: 10px\"><FONT face=Verdana color=#990000 size=5><B>Asignacion de Delegado Tecnico</B></FONT> <HR color=#000000 SIZE=1><FONT face=Verdana size=2>De acuerdo a lo que indica el  <I>Art. 124</I> del Reglamento General de la <b>Ley Orgánica del Sistema Nacional de Contratación Pública,</b> designo a usted Delegado Tecnico del Contrato No.";

                TextoAdmini1 = "<I>" + this.txtCodContrato.Value + "</I></a> del proceso <B>" + this.txtCodProceso.Value + "</B> para la " + this.txtObjetoContrato.Value + ", a fin de dar cumplimiento cabal y oportuno de todas y cada una de las obligaciones derivadas del mismo y adopte las acciones que sean necesarias para evitar retrasos injustificados e imponga las multas y sanciones a que hubiere lugar. <br /> <br />";
                TextoAdmini1 = TextoAdmini1 + "Atentamente,<br /><br />Dpto. Fiscalizacion y Administracion de Proyectos</DIV>";
                TextoAdmini1 = TextoAdmini1 + "</form></body></html>";


                this.ASPxHtmlEditor1.Html = "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\"><html xmlns=\"http://www.w3.org/1999/xhtml\" ><head runat=\"server\"><title>Modulo de Contratos</title></head><body>    <form id=\"form1\" runat=\"server\">";
                this.ASPxHtmlEditor1.Html = this.ASPxHtmlEditor1.Html + "<DIV style=\"PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; PADDING-TOP: 10px\"><FONT face=Verdana color=#990000 size=5><B>Asignacion de Delegado Tecnico</B></FONT> <HR color=#000000 SIZE=1><FONT face=Verdana size=2>De acuerdo a lo que indica el  <I>Art. 124</I> del Reglamento General de la <b>Ley Orgánica del Sistema Nacional de Contratación Pública,</b> designo a usted Delegado Tecnico del Contrato No.<a href=\"http://191.9.200.151/WAContratos/login.aspx?usr=USUARIOENVIO&pwd=CLAVEENVIO=&exP=0&email=" + UserBean.UserEmail + "&tipo=CONSULTA&codContratoCon=" + this.txtCodContrato.Value + "\"><I>" + this.txtCodContrato.Value + "</I></a> del proceso <B>" + this.txtCodProceso.Value + "</B> para la " + this.txtObjetoContrato.Value + ", a fin de dar cumplimiento cabal y oportuno de todas y cada una de las obligaciones derivadas del mismo y adopte las acciones que sean necesarias para evitar retrasos injustificados e imponga las multas y sanciones a que hubiere lugar. <br /> <br />";
                this.ASPxHtmlEditor1.Html = this.ASPxHtmlEditor1.Html + "Atentamente,<br /><br />Dpto. Fiscalizacion y Administracion de Proyectos</DIV>";
                this.ASPxHtmlEditor1.Html = this.ASPxHtmlEditor1.Html + "</form></body></html>";
            }
        }

        protected void imgAdArAdm_Click(object sender, ImageClickEventArgs e)
        {
            string dato = "<script>abrirEmailAdmin('envioEmailAdjun.aspx?codContrato=" + this.txtCodContrato.Value + "&codUsuario=" + UserBean.UserUsuario + "&flujo=2&remitente=" + UserBean.UserNombre + "&claseTramite=15');</script>";

            Page.RegisterStartupScript("keyClienthabilita", dato);

        }

        protected void imgAgregaAdministra_Click(object sender, ImageClickEventArgs e)
        {
            EmailBean unEmail = new EmailBean();
            ArrayList unArray = new ArrayList();

            for (int a = 0; a < this.lstArchivos.Items.Count; a++)
            {
                string urlPath = "";
                this.lstArchivos.SelectedIndex = a;
                //Server.MapPath("\\WAContratos\\archivos\\" + FileUpload1.FileName);
                //urlPath = Server.MapPath("\\WAContratos\\archivos\\"+this.lstArchivos.SelectedItem.Text.ToString());
                urlPath = Server.MapPath("\\WAContratos\\archivos\\" + this.lstArchivos.SelectedItem.Text.ToString());
                unArray.Add(urlPath);
            }


            unEmail.P_asunto = "Asignacion de Delegado Tecnico del Cod. Contrato " + this.txtCodContrato.Value;

            unEmail.P_rutasArchivos = unArray;

            ContratoManager uContra = new ContratoManager();
            ErroresBean unError = new ErroresBean();

            UsuarioBean unUsu = new UsuarioBean();

            unUsu = uContra.obtieneDatosUsu(this.ContxtAdministrador.Text);


            TextoAdmini = TextoAdmini + "<a href=\"http://191.9.200.151/WAContratos/login.aspx?usr=" + unUsu.UserUsuario + "&pwd=" + unUsu.UserClave + "&exP=0&email=" + UserBean.UserEmail + "&tipo=CONSULTA&codContratoCon=" + this.txtCodContrato.Value + "\">";

            TextoAdmini = TextoAdmini + TextoAdmini1;


            this.ASPxHtmlEditor1.Html = TextoAdmini;

            unEmail.P_detalleEmail = this.ASPxHtmlEditor1.Html;

            unError = uContra.actuDeleTecnico(this.txtCodContrato.Value, this.dpTipoAsignacion.SelectedValue.ToString(), this.txtObservacion.Text, this.ContxtAdministrador.Text, "3024", unEmail);

            if (unError.P_cod_error.Equals("00"))
            {
                Session["msg_aplcacion"] = "Se actualizo Correctament el Codigo No. " + this.txtCodContrato.Value.ToUpper();
                String cad = "<script> window.showModalDialog(\"mensajes/Mensaje.aspx\",'',' dialogWidth=450px; dialogHeight=180px;scroll=no; center=yes; help=no; status=no; menubar=no; resizable=no; border=thin');</script>";

                Page.RegisterStartupScript("keyClientBlockAct", cad);

                this.ContxtAdministrador.Text = "";
                this.ContxtDescAdministrador.Text = "";

            }
            else
            {
                String cad = "<script> window.showModalDialog(\"mensajes/web_grl_Mensaje.aspx\",'',' dialogWidth=450px; dialogHeight=250px;scroll=no; center=yes; help=no; status=no; menubar=no; resizable=no; border=thin');</script>";
                Session["cod_error_aplcacion"] = unError.P_cod_error;
                Session["msg_error_aplcacion"] = unError.P_msg_error_tecni;
                Session["msg_error_tecnico"] = unError.P_msg_error_tecni;
                Session["nomAplicativo"] = "Error Asignacion Delegado Tecnico";

                Page.RegisterStartupScript("keyClientAct", cad);
            }
        }

        protected void imgAgregarArch_Click(object sender, ImageClickEventArgs e)
        {

            if (FileUpload1.HasFile)
            {
                try
                {
                    //Verifica si ya esta ingresado 
                    String archCarga = "";
                    bool bande = false;

                    for (int a = 0; a < this.lstArchivos.Items.Count; a++)
                    {
                        this.lstArchivos.SelectedIndex = a;

                        archCarga = this.lstArchivos.SelectedItem.Text.ToString();

                        if (archCarga.Equals(this.FileUpload1.FileName))
                        {
                            bande = true;
                            a = this.lstArchivos.Items.Count + 2;
                        }
                    }

                    if (!(bande))
                    {
                        //Response.Redirect("error.aspx?valor=" + ex.Message);
                        //FileUpload1.SaveAs(Server.MapPath("\\WAContratos\\archivos\\" + FileUpload1.FileName));
                        FileUpload1.SaveAs(Server.MapPath("\\WAContratos\\archivos\\" + FileUpload1.FileName));
                        ListItem unItem = new ListItem();
                        unItem.Value = Convert.ToString(Convert.ToInt32(this.lstArchivos.Items.Count) + 1);
                        unItem.Text = FileUpload1.FileName;
                        this.lstArchivos.Items.Add(unItem);
                        //emailBean.P_rutaArchivo = Server.MapPath("\\WAContratos\\archivos\\" + FileUpload1.FileName);
                        /*lblSize.Text = FileUpload1.PostedFile.ContentLength & " bytes"
                        lblTipo.Text = FileUpload1.PostedFile.ContentType*/
                    }
                    else
                    {
                        String msgError = "Ya ingreso este Archivo";

                        String dato = "<script>alert('" + msgError + "');</script>";

                        Page.RegisterStartupScript("keyClienthabilita", dato);
                    }
                }
                catch (Exception ex)
                {
                    Console.Write(ex.Message);
                    // Response.Redirect("error.aspx?valor=" + ex.Message);
                    String msgError = ex.Message;

                    String dato = "<script>alert('" + msgError + "');</script>";

                    Page.RegisterStartupScript("keyClienthabilita", dato);
                }
            }
            else
            {

            }
        }

        protected void LinkButton1_Click(object sender, EventArgs e)
        {
            if (LinkButton1.Text.Equals("Ver Informacion del Email"))
            {
                this.ASPxHtmlEditor1.Visible = true;
                this.divAdministrador.Visible = false;
                this.LinkButton1.Text = "Ocultar Informacion del Email";
            }
            else
            {
                this.ASPxHtmlEditor1.Visible = false;
                this.divAdministrador.Visible = true;
                this.LinkButton1.Text = "Ver Informacion del Email";
            }
        }

    }
}
